package com.youlu.campus.admin.data.service;


import com.youlu.campus.admin.data.entity.*;

import java.util.Date;
import java.util.HashMap;
import java.util.List;

/**
 * 日数据统计
 */
public interface DayDataStatisticsService {
    /**
     * 获取日用户数据概览
     *
     * @param startTime
     * @param endTime
     * @return
     */
    HashMap<String, DayUserStatistics> getDayUserStatisticsOverview(String tenantId, Date startTime, Date endTime);

    HashMap<String, DayGroupStatistics> getDayGroupStatisticsOverview(String tenantId, Date startTime, Date endTime);

    HashMap<String, DayCheckInStatistics> getDayCheckInStatisticsOverview(String tenantId, Date startTime, Date endTime);

    HashMap<String, DayMemberGroupStatistics> getDayMemberGroupStatisticsOverview(String tenantId, Date startTime, Date endTime);

    HashMap<String, DayGroupLeaderStatistics> getDayGroupLeaderStatisticsOverview(String tenantId, Date startTime, Date endTime);

    HashMap<String, DayCommunityStatistic> getDayCommunityStatisticOverview(String tenantId, Date startTime, Date endTime);

    /**
     * 获取用户数据统计历史
     *
     * @param startTime
     * @param endTime
     * @return
     */
    HashMap<String, List<DayUserStatistics>> getUserStatisticsHistory(String tenantId, Date startTime, Date endTime);

    HashMap<String, List<DayGroupStatistics>> getGroupStatisticsHistory(String tenantId, Date startTime, Date endTime);

    HashMap<String, List<DayCheckInStatistics>> getCheckInStatisticsHistory(String tenantId, Date startTime, Date endTime);

    HashMap<String, List<DayMemberGroupStatistics>> getMemberGroupStatisticsHistory(String tenantId, Date startTime, Date endTime);

    HashMap<String, List<DayGroupLeaderStatistics>> getGroupLeaderStatisticsHistory(String tenantId, Date startTime, Date endTime);

    HashMap<String, List<DayCommunityStatistic>> getCommunityStatisticHistory(String tenantId, Date startTime, Date endTime);
}
